package br.com.estudante.mvc.logica;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.servlet.RequestDispatcher;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import br.com.estudante.modelo.Estudante;

public class Salvar implements Logica {

	@Override
	public void executa(HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		EntityManagerFactory factory = Persistence.createEntityManagerFactory("Estudante");
		EntityManager manager = factory.createEntityManager();
		
		manager.getTransaction().begin();
		
		Estudante estudante = new Estudante();
		estudante.setSerie(Integer.parseInt(request.getParameter("serie")));
		estudante.setNome(request.getParameter("nome").toUpperCase());
		estudante.setEndereco(request.getParameter("endereco").toUpperCase());
		estudante.setTelefone(request.getParameter("telefone"));
		estudante.setCidade(request.getParameter("cidade").toUpperCase());
		estudante.setMedia(Double.parseDouble(request.getParameter("media")));
		estudante.setSexo(request.getParameter("sexo").toUpperCase().charAt(0));
		
		manager.persist(estudante);		
		manager.getTransaction().commit();
		manager.close();
		factory.close();
		
		RequestDispatcher rd = 
				request.getRequestDispatcher("/confirma-adiciona.jsp");
		rd.forward(request, response);

	}

}
